package com.ccctop.crowd.service;

import com.ccctop.crowd.entity.po.TFundRequest;
import com.ccctop.crowd.entity.po.TInvestor;
import com.ccctop.crowd.entity.vo.*;
import com.ccctop.crowd.util.ResultEntity;
import jdk.internal.org.objectweb.asm.tree.IincInsnNode;
import org.web3j.crypto.CipherException;

import java.io.IOException;
import java.util.List;

public interface FundService {
    ResultEntity<String> createFundRequest(TFundRequestVo fundRequest) throws Exception;

    ResultEntity<List<FundRequestVo>> fundInfo(Integer userId) throws Exception;

    ResultEntity<String> fundAgree(FundVoteVo itemId) throws Exception;

    ResultEntity<String> fundRefuse(FundVoteVo itemId) throws Exception;

    void supportProject(InvestorVo investor) throws Exception;

    void tryWithdraw(WithdrawVo withdrawVo) throws Exception;
}
